Not Applicable
Long distance telephone facilities usually comprise four-wire transmission circuits between switching offices in different local exchange areas, and two-wire circuits within each area connecting individual subscribers with the switching office. A call between subscribers in different exchange areas is carried over a two-wire circuit in each of the areas and a four-wire circuit between the areas, with conversion of speech energy between the two and four-wire circuits being effected by hybrid circuits. Ideally, the hybrid circuit input ports perfectly match the impedances of the two and four-wire circuits, and its balance network impedance perfectly matches the impedance of the two-wire circuit. In this manner, the signals transmitted from one exchange area to the other will not be reflected or returned to the one area as echo. Unfortunately, due to impedance differences which inherently exist between different two and four-wire circuits, and because impedances must be matched at each frequency in the voice band, it is virtually impossible for a given hybrid circuit to perfectly match the impedances of any particular two and four-wire transmission circuit. Echo is, therefore, characteristically part of a long distance telephone system.
Although undesirable, echo is tolerable in a telephone system so long as the time delay in the echo path is relatively short, for example, shorter than about 40 milliseconds. However, longer echo delays can be distracting or utterly confusing to a far end speaker, and to reduce the same to a tolerable level an echo canceller may be used toward each end of the path to cancel echo which otherwise would return to the far end speaker. As is known, echo cancellers monitor the signals on the receive channel of a four-wire circuit and generate estimates of the actual echoes expected to return over the transmit channel. The echo estimates are then applied to a subtractor circuit in the transmit channel to remove or at least reduce the actual echo.
In simplest form, generation of an echo estimate comprises obtaining individual samples of the signal on the receive channel, convolving the samples with the impulse response of the system and then subtracting, at the appropriate time, the resulting products or echo estimates from the actual echo on the transmit channel. In actual practice generation of an echo estimate is not nearly so straightforward.
Transmission circuits, except those which are purely resistive, exhibit an impulse response which has amplitude and phase dispersive characteristics that are frequency dependent, since phase shift and amplitude attenuation vary with frequency. To this end, a suitable known technique for generating an echo estimate contemplates manipulating representations of a plurality of samples of signals which cause the echo and samples of impulse responses of the system through a convolution process to obtain an echo estimate which reasonably represents the actual echo expected on the echo path. One such system is illustrated in FIG. 1.
In the system illustrated in FIG. 1, a far end signal x from a remote telephone system is received locally at line 10. As a result of the previously noted imperfections in the local system, a portion of the signal x is echoed back to the remote site at line 15 along with the signal v from the local telephone system. The echo response is illustrated here as a signal s corresponding to the following equation:
s=h*x
where h is the impulse response of the echo characteristics. As such, the signal sent from the near end to the far end, absent echo cancellation, is the signal y, which is the sum of the telephone signal v and the echo signal s. This signal is illustrated as y at line 15 of FIG. 1.
To reduce and/or eliminate the echo signal component s from the signal y, the system of FIG. 1 uses an echo canceller having an impulse response filter {overscore (h)} that is the estimate of the impulse echo response h. As such, a further signal {overscore (s)} representing an estimate of echo signal s is generated by the echo canceller in accordance with the following equation:
{overscore (s)}={overscore (h)}*x
The echo canceller subtracts the echo estimate signal s from the signal y to generate a signal e at line 20 that is returned to the far end telephone system. The signal e thus corresponds to the following equation:
e=s+vxe2x88x92{overscore (s)}≈v
As such, the signal returned to the far end station is dominated by the signal v of the near end telephone system. As the echo impulse response {overscore (h)} more closely correlates to the actual echo response h, then s-bar more closely approximates s and thus the magnitude of the echo signal component s on the signal e is more substantially reduced.
The echo impulse response model {overscore (h)} may be replaced by an adaptive digital filter having an impulse response ĥ. Generally, the tap coefficients for such an adaptive response filter are found using a technique known as Normalized Least Mean Squares adaptation.
Although such an adaptive echo canceller architecture provides the echo canceller with the ability to readily adapt to changes in the echo path response h, it is highly susceptible to generating sub-optimal echo cancellation responses in the presence of xe2x80x9cdouble talkxe2x80x9d (a condition that occurs when both the speaker at the far end and the speaker at the near end are speaking concurrently as determined from the viewpoint of the echo canceller).
To reduce this sensitivity to double-talk conditions, it has been suggested to use both a non-adaptive response and an adaptive response filter in a single echo canceller. One such echo canceller is described in U.S. Pat. No. 3,787,645, issued to Ochiai et al on Jan. 22, 1974. Such an echo canceller is now commonly referred to as a dual-H echo canceller.
Although the dual-H echo canceller architecture of the ""645 patent provides substantial improvements over the use of a single filter response architecture, the ""645 patent is deficient in many respects and lacks certain teachings for optimizing the use of such a dual-H architecture in a practical echo canceller system. For example, the present inventors have recognize that the adaptation gain used to adapt the tap coefficients of the adaptive filter may need to be altered based on certain detected conditions. These conditions include conditions such as double-talk, non-linear echo response paths, high background noise conditions, etc. The present inventors have recognized the problems associated with the foregoing dual-H architecture and have provided solutions to such conditions.
According to a first embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients to simulate an echo response, the adaptive tap coefficients being updated at times by using during each such time a variable adaptive gain. A channel condition detector responsive to detected channel conditions changes the variable adaptive gain. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
According to a second embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients that simulate an echo response, the adaptive tap coefficients being updated at times by using during each such time an adaptive process having an adaptive gain. A channel condition detector sets the adaptive gain equal to zero in response to a double-talk condition. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
According to a third embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients that simulate an echo response, the adaptive tap coefficients being updated at times using during each such time an adaptive process having an adaptive gain. A channel condition detector lowers the adaptive gain in response to background noise channel conditions. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
According to a fourth embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients that simulate an echo response, the adaptive tap coefficients being updated at times using during each such time an adaptive process having an adaptive gain. A channel condition detector lowers the adaptive gain in response to a narrow band signal condition. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
According to a fifth embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients that simulate an echo response, the adaptive tap coefficients being updated at times using during each such time an adaptive process having an adaptive gain. A channel condition detector lowers the adaptive gain in response to a non-linear echo path condition. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
According to a sixth embodiment of the invention, an echo canceller circuit comprises a digital filter having adaptive tap coefficients that simulate an echo response, the adaptive tap coefficients being updated at times using during each such time an adaptive process having an adaptive gain. A channel condition detector lowers the adaptive gain in response to substandard performance of the echo canceller. The echo canceller circuit is responsive to the adaptive tap coefficients to generate an echo-compensated signal.
A seventh embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each time a variable adaptive gain;
changing the variable adaptive gain based upon detected channel conditions; and
generating an echo-compensated signal in response to the adaptive tap coefficients.
An eighth embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each such time a variable adaptive gain;
setting the adaptive gain equal to zero in response to a double-talk condition; and
generating an echo-compensated signal in response to the adaptive tap coefficients.
A ninth embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each such time a variable adaptive gain;
lowering the adaptive gain in response to background noise channel conditions; and
generating an echo-compensated signal in response to the adaptive tap coefficients.
A tenth embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each such time a variable adaptive gain;
lowering the adaptive gain in response to a narrow band signal condition; and
generating an echo-compensated signal in response to the adaptive tap coefficients.
An eleventh embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each such time as variable adaptive gain;
lowering the adaptive gain in response to a non-linear echo path condition and
generating an echo-compensated signal in response to the adaptive tap coefficients.
A twelfth embodiment of the invention includes a computer-readable medium having stored thereon sequences of instructions, the sequences of instructions comprising instructions which, when executed by a processor, cause the processor to perform the steps comprising:
simulating an echo response using a digital filter having adaptive tap coefficients;
updating at times the tap coefficients using during each such time a variable adaptive gain;
lowering the adaptive gain in response to substandard performance of the echo canceller; and
generating an echo-compensated signal in response to the adaptive tap coefficients.